package com.chen.service;

import com.chen.dao.pojo.SysUser;
import com.chen.vo.Result;
import com.chen.vo.param.SysUserParam;

/**
 * @Author:chenao
 * @DATE:2022/3/10 22:52
 */
public interface SysUserService {

    /**
     * 通过用户名和密码查询用户，用于登录
     * @param username
     * @param password
     * @return
     */
    SysUser findUser(String username,String password);

    /**
     * 查询系统用户列表
     * @param param
     * @return
     */
    Result listSysUser(SysUserParam param);

    /**
     * 保存系统用户
     * @param param
     * @return
     */
    Result saveSysUser(SysUserParam param);

    /**
     * 重置系统用户密码为默认密码
     * @param param
     * @return
     */
    Result resetSysUserPwd(SysUserParam param);

    /**
     * 切换用户的是否启动状态
     * @param param
     * @return
     */
    Result updateSysUserStatus(SysUserParam param);

    /**
     * 修改用户拥有角色
     * @param param
     * @return
     */
    Result updateSysUserRole(SysUserParam param);

    /**
     * 删除用户
     * @param id 用户id
     * @return
     */
    Result deleteSysUser(String id);

    /**
     * 修改密码
     * @param param
     * @return
     */
    Result updatePwd(SysUserParam param);

    /**
     * 系统管理员自己修改自己的资料
     * @param param
     * @return
     */
    Result personalUpdate(SysUserParam param);
}
